#ifndef _COMMENT_H
#define _COMMNET_H
#include <stdio.h>
#include <arpa/inet.h>
#include <pthread.h>
#include <string.h>
#include <stdlib.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <stdbool.h>
#include <arpa/inet.h>
#include <unistd.h>
#include <pthread.h>
#include <sys/select.h>
#include <signal.h>
#include <sys/epoll.h>

typedef struct hostAddr
{
     char ip[16];//字符串IP
     unsigned short port;//端口号
}HOSTADDR;

typedef struct registerU//注册结构体
{
     char name[128];
     char pwd[128];
}RGU;

//枚举
typedef enum 
{
     baodao,
     login,
     regist,
     chat,
     groupChat,
     singleChat,
     addFriend,
     quit,
     ok,
     no,
     queryChatRec,
     queryOver
}MSG_TYPE;

typedef struct msg
{
     MSG_TYPE type;//消息类型
     char buf[1020];//消息的内容
}MSG;


//登录信息
typedef struct loginInfo
{
     char name[128];//用户名
     int fd;//用户套接字，如果是TCP这里应该用户的套接字
}LOGIN_INFO;

//私聊的结构体
typedef struct
{
     char selfName[128];//自己的名字
     char destName[128];//对方的名字
     char text[500];//聊天的内容
     time_t t;//聊天的时间
}SINGLE_CHAT;


//把网络的地址结构体转为本地用户能够识别的地址
HOSTADDR convertNetToHost(struct sockaddr_in addr);
void test();

#endif